// 监听主线程消息
addEventListener(
    'message',
    (消息) => {
        if(消息.data.命令 === '生成') {
            生成质数(消息.data.数量);
        }
    },
);



function 生成质数(数量) {
    function 判断质数(n) {
        for(let c=2; c<Math.sqrt(n);c++) {
            if(n % c === 0) {
                return false;
            }
        }
        return true;
    }

    const 质数数组 = [];
    const 最大值 = 1000000;

    while(质数数组.length < 数量) {
        const 候选值 = Math.floor(Math.random() * (最大值 + 1));
        if (判断质数(候选值)) {
            质数数组.push(候选值);
        }
    }

    postMessage(质数数组.length);
}